#ifndef QUEUE_H
#define QUEUE_H

#include <queue>
#include <iostream>

template<typename E>
class JavaQueue {
private:
    std::queue<E> *queue;

public:
    explicit JavaQueue(std::queue<E> *que);
    ~JavaQueue();

public:
    bool empty();
    E peek();
    E poll();
    void offer(const E &item);
    int search(const E &item);
};

int JavaQueue_main();

#endif // QUEUE_H